メインコンテンツまでスキップ
バージョン: DAI 7.3

Eggplant DAIモデル実行エンドポイント

New Feature

管理者ユーザーは、DAI UIを通じてclient_idとclient_secretを持つAPIクライアントを生成することができます。

Eggplant DAIは、client_credentialsグラントタイプと共にOAuth 2.0認証プロトコルを使用し、REST APIへのアクセスを有効にします。このページでは、APIアクセスキーとシークレットを生成し、それらをトークンと交換し、そのトークンを使用して残りのDAI REST APIを呼び出す方法について説明します。例えば、実行APIを呼び出し、REST経由で実行の開始などの実行コントロールと対話するために使用できます。これらのサービスを使用すると、この動作をDevOpsツールチェーンに統合することができます。

入門

REST APIは、Eggplant DAIのインストールが完了したらすぐに使用できます。APIへのアクセスを得るためには、以下の手順が必要です:

アクセストークンを取得すると、Eggplant DAIウェブアプリで利用可能なすべてのオプションでモデルをテストすることができます。実行が開始されると、それを処理し続けることができます。戻されるIDを使用して、実行の進行状況を確認することができます。さらに、実行を中止することもできます。

APIクライアント認証情報の生成

管理者ユーザーはAPIクライアントを作成することができます。作成されたクライアントは、管理者ユーザーと同等の権限を持ち、管理者ユーザーが行えるほぼすべてのことを行うことができますが、さらにAPIクライアントを作成することはできません。

APIクライアントを作成するには:

  1. System > API Accessへ移動します。
  2. Add Newをクリックします。
  3. 資格情報の名前と説明を追加します。
  4. Createをクリックします。
  5. ファイルのダウンロードを求めるプロンプトが表示されます。Downloadをクリックし、認証情報.csvファイルを安全な場所に保存します。

これで、資格情報ファイルからclient_idclient_secrettoken_urlを使用してアクセストークンを取得することができます。

セキュリティに関する注意事項

これらの資格情報をパスワードと同様に取り扱います。それらを安全に保管し、共有しないでください。API認証情報が紛失、漏洩、または忘れられた場合、APIアクセスインターフェースを通じて取り消すか再生成することができます。

認証情報を送信する場所

APIクライアント.csvファイルや実行環境.iniをダウンロードした場合、ファイル内のtoken_url値を見つけることができます。

任意のDAIインスタンスで以下の手順を行うことで、対象とするtoken_url値を構築することもできます:

  1. DAIのログインページに移動します。
  2. アドレスバーからの値、以下の例ではlogin_urlをコピーします。
  3. /authおよびそれに続くすべてを/tokenに置き換えます。

例:

login_url=http://localhost:8000/auth/realms/eggplant/protocol/openid-connect/auth?client_id=...
token_url=http://localhost:8000/auth/realms/eggplant/protocol/openid-connect/token

Eggplant Cloudの顧客の場合、レルム名は動的です。ドキュメントの残りの部分では、\{realm\}と表記しますが、使用前にカスタム値に置き換える必要があります。

アクセストークンの取得と認証

以前のステップの資格情報を使用して、APIからアクセストークンを取得し、認証します。

token_urlにリクエストを送ります。

POST > http://localhost:8000/auth/realms/\{realm\}/protocol/openid-connect/token
Content-Type:application/x-www-form-urlencoded

リクエストボディ:

{
{
"grant_type": "client_credentials",
"client_id":"{あなたのクライアント識別子}",
}

例:成功したレスポンス

{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia...",
"expires_in": 300,
"refresh_expires_in": 0,
"token_type": "Bearer",
"not-before-policy": 0,
"session_state": "4fcb07e1-eb73-42e7-b369-26c8db036f90",
"scope": "email template:dai:agents profile"
}

アクセストークンは5分間有効です。APIへのアクセスを維持するためには、アクセストークンの有効期限を確認し、元のトークンが有効期限切れになる前に再度資格情報を送信して新しいトークンを取得するか、401のレスポンスが返されたときに行う必要があります。

使用可能なメソッド

以下のHTTPメソッドを使用して、Eggplant DAI APIエンドポイントにリクエストを送信します:

  • GET はデータの要求に使用します
  • POST は新しいレコードの作成に使用します
  • PUT はレコードの更新に使用します
  • DELETE はレコードの削除に使用します

この表には、モデルの実行の開始、監視、停止に関する個々のAPIメソッドの説明へのリンクが含まれています。

タイトルURLHTTPメソッド説明
NEW Auth Methodhttp://localhost:8000/auth/realms/{realm}/protocol/openid-connect/tokenPOSTtoken_urlエンドポイントはAPIのアクセストークンを返します。
NEW Start Model Executionhttp://localhost:8000/execution_service/api/v1/executionsPOSTモデルの実行を開始します。
List Run Detailshttp://localhost:8000/ai/runsGET進行中のモデルの実行詳細を返します。
Get a List of all Agentshttp://localhost:8000/ai/agentsPOSTすべてのホストエージェントの詳細を返します。
NEW Abort Model Executionhttp://localhost:8000/execution_service/api/v1/executions/{execution_status_id}DELETEモデルの実行を停止します。

モデルの実行に関する詳細な分析、例えば実行レポートの表示、カバレッジレポートの表示、テストケースの分析等については、Swagger docsを参照してください。